package Hot100;

/**
 * @author zhangmin
 * @create 2021-12-20 11:03
 */
public class longestPalindrome5 {

    /**
     * 5. 最长回文子串
     * 给你一个字符串 s，找到 s 中最长的回文子串。
     * 思路：以每个字符为中心计算，以它为中心的最长回文字串
     * */
    String palindrome(String s,int l,int r){
        while (l>=0&&r<s.length()&&s.charAt(l)==s.charAt(r)){
            l--;r++;
        }
        return s.substring(l+1,r);
    }
    public String longestPalindrome(String s) {
        String res="";
        for (int i = 0; i < s.length(); i++) {
            String s1 = palindrome(s, i, i);
            String s2 = palindrome(s, i, i + 1);
            res=s1.length()>res.length()?s1:res;
            res=s2.length()>res.length()?s2:res;
        }
        return res;
    }
}
